#include <iostream>
#include <string>


class Test
{
private:
    int a = 9;
    int b = {5};
    int c{12};
    double array[4] = { 3.14, 3.15, 3.16, 3.17};
    double array1[4] { 3.14, 3.15, 3.16, 3.17 };
    //std::string s1("hello");     // error
    std::string s2{ "hello, world" };
};

class Init
{
public:
    Init(int x, int y, int z) :a(x), b(y), c(z) {}//通过初始化列表指定的值会覆盖就地初始化时指定的值。

    int a = 1;
    int b = 2;
    int c = 3;
};

int main()
{
    Init tmp(10, 20, 30);//通过初始化列表指定的值会覆盖就地初始化时指定的值。
    std::cout << "a: " << tmp.a << ", b: " << tmp.b << ", c: " << tmp.c << std::endl;
    return 0;
}


/* 作者: 苏丙榅
链接: https://subingwen.cn/cpp/quick_init/
来源: 爱编程的大丙
著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。 */